Inertial measurement units (IMUs) may be incorporated into a wide variety of machines that may travel by land, air, or sea. In some applications one or more IMUs may be used to measure data such as orientation, velocity, rotational velocity, and acceleration of a machine, for example. This data may be input to various systems ranging from navigation and dead reckoning to anti-lock braking and dynamic stability control to any other type of control system for a machine.
Because such systems may be used to control various aspects of the machine, it is important to ensure the data received from the IMUs is accurate and to determine when one or more IMUs is sending inaccurate data. Otherwise, the inaccurate data may cause the systems to operate in an undesirable manner, causing poor machine performance or even failure. For example, if IMUs connected to a machine such as an autonomous or semi-autonomous machine send inaccurate data to a navigation or dead reckoning system, the machine may move in an undesirable manner, e.g. by drifting off course, rolling over, etc. Accordingly, it is helpful to analyze the outputs from the IMUs to ensure that the data is accurate, and to generate notifications or otherwise implement corrective actions when the data is inaccurate or when an IMU is malfunctioning.
An exemplary system that may be used to detect errors in one or more IMUs is disclosed in U.S. Patent Application Publication No. 2011/0172950 to Brady et al. that published on Jul. 14, 2011 (the '950 publication). The system in the '950 publication includes two IMUs and a sensor system with multiple sensors that provide rate data in three directions. The '950 publication compares data streams from the two IMUs, and, if the data streams are different, compares each of the data streams to the sensor outputs to determine which, if any, of the two IMUs failed.
Although the system of the '950 publication may be useful for detecting errors in one or more IMUs, merely comparing the data streams to determine if one data stream differs from another may not account for the different physical placements of the IMUs on a machine. For example, two IMUs that are placed apart from each other on a machine may output different data streams based on, e.g., their physical placement and the rotation of the machine in one or more directions, even though both IMUs are functioning properly. Moreover, any attempt to account for such different physical placement may cause the computations in the system of the '950 publication to become complicated, slowing down the system. Still further, the system of the '950 publication requires two IMUs plus additional sensors to identify an error and implement corrective action. These additional sensors increase the cost and complexity of the system in the '950 publication.
The disclosed error detection system is directed to overcoming one or more of the problems set forth above and/or other problems of the prior art.